package cn.stu.framework.mapper;

import cn.stu.framework.entity.RoleMenu;
import cn.stu.framework.vo.rolemenu.MenusVo;
import cn.stu.framework.vo.rolemenu.RoleMenuVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;


/**
 * 角色菜单映射器
 *
 * @author 郑志豪
 * @date 2023/11/07
 */
@Mapper
public interface RoleMenuMapper extends BaseMapper<RoleMenu> {


    /**
     * 角色菜单列表
     *
     * @param roleName 角色名称
     * @return {@link List}<{@link RoleMenuVo}>
     */
    List<RoleMenuVo> roleMenuList(@Param("roleName") String roleName);

    /**
     * 获取菜单VO
     *
     * @param roleId 角色ID
     * @return {@link List}<{@link MenusVo}>
     */
    List<MenusVo> getMenusVo(@Param("roleId") Long roleId);

    /**
     * 获取菜单
     *
     * @param roleId 角色ID
     * @return {@link List}<{@link Long}>
     */
    List<Long> getMenus(@Param("roleId") Long roleId);
}
